<script setup lang="ts">
import { ref } from 'vue'
import { useRouter } from 'vue-router'

// 获取路由对象
const router = useRouter()
const inpValue = ref('')

const goSearch = () => {
  // 1. 通过路径的方式跳转
  /*
   router.push('路由路径')
   router.push('路由路径?参数名=参数值')
  */
  // router.push('/search')
  // router.push(`/search?words=${inpValue.value}`)
  // router.push(`/search/${inpValue.value}`)

  /**
    router.push({  
      path: '路由路径' 
    })

    router.push({  
      path: '路由路径' 
      query: {
        参数名: 参数值,
        参数名: 参数值
      }
    })
  */
  // router.push({
  //   path: '/search'
  // })

  // router.push({
  //   path: '/search',
  //   query: {
  //     words: inpValue.value
  //   }
  // })

  // router.push({
  //   path: `/search/${inpValue.value}`
  // })

  // 2. 通过命名路由的方式跳转 (需要给路由起名字) 适合长路径
  /**
   router.push({
     name: '路由名'
     query: { 参数名: 参数值 },
     params: { 参数名: 参数值 }
   })
   */
  if (inpValue.value === '') {
    alert('输入内容')
    return
  }
  router.push({
    name: 'search',
    // query: {
    //   words: inpValue.value
    // }
    params: {
      words: inpValue.value
    }
  })
}
</script>

<template>
  <div class="home">
    <div class="logo-box"></div>
    <div class="search-box">
      <input type="text" v-model="inpValue" />
      <button @click="goSearch">搜索一下</button>
    </div>
    <div class="hot-link">
      热门搜索：
      <router-link to="/search/黑马程序员">黑马程序员</router-link>
      <router-link to="/search/前端培训">前端培训</router-link>
      <router-link to="/search/如何成为前端大牛">如何成为前端大牛</router-link>
    </div>
  </div>
</template>

<style scoped>
.logo-box {
  height: 150px;
  background: url('@/assets/logo.jpeg') no-repeat center;
}

.search-box {
  display: flex;
  justify-content: center;
}

.search-box input {
  width: 400px;
  height: 30px;
  line-height: 30px;
  border: 2px solid #c4c7ce;
  border-radius: 4px 0 0 4px;
  outline: none;
}

.search-box input:focus {
  border: 2px solid #ad2a26;
}

.search-box button {
  width: 100px;
  height: 36px;
  border: none;
  background-color: #ad2a26;
  color: #fff;
  position: relative;
  left: -2px;
  border-radius: 0 4px 4px 0;
}

.hot-link {
  width: 508px;
  height: 60px;
  line-height: 60px;
  margin: 0 auto;
}

.hot-link a {
  margin: 0 5px;
}
</style>
